<html>
<head><meta charset="utf-8"><title>async fn in traits · wg-async-foundations · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/index.html">wg-async-foundations</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html">async fn in traits</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="235321357"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235321357" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235321357">(Apr 20 2021 at 10:34)</a>:</h4>
<p>I was looking more closely at the story of async fn in traits and I realized it had some limitations.</p>



<a name="235321386"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235321386" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235321386">(Apr 20 2021 at 10:35)</a>:</h4>
<p>The trait doesn't include an <code>&amp;self</code> or <code>&amp;mut self</code> in the method signature.</p>



<a name="235321425"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235321425" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235321425">(Apr 20 2021 at 10:35)</a>:</h4>
<p>It also doesn't describe where the trait is used in the library at all.</p>



<a name="235321443"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235321443" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235321443">(Apr 20 2021 at 10:35)</a>:</h4>
<p>I noticed because I'm working on a shiny future variant and I realize that it matters :)</p>



<a name="235321448"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235321448" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235321448">(Apr 20 2021 at 10:35)</a>:</h4>
<p>I'll poke around</p>



<a name="235321455"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235321455" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235321455">(Apr 20 2021 at 10:35)</a>:</h4>
<p>cc <span class="user-mention" data-user-id="400241">@Zeeshan Ali</span></p>



<a name="235321501"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235321501" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235321501">(Apr 20 2021 at 10:36)</a>:</h4>
<p>and <span class="user-mention" data-user-id="224872">@rylev</span> I suppose</p>



<a name="235321524"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235321524" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235321524">(Apr 20 2021 at 10:36)</a>:</h4>
<p>I'm wondering if folks know of a <code>HttpService</code> trait from existing crates</p>



<a name="235321547"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235321547" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235321547">(Apr 20 2021 at 10:36)</a>:</h4>
<p>I saw though that <span class="user-mention" data-user-id="400241">@Zeeshan Ali</span> wanted an async version of the <a href="https://docs.rs/zbus/1.9.1/zbus/trait.Interface.html">zbus trait</a></p>



<a name="235321578"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235321578" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235321578">(Apr 20 2021 at 10:36)</a>:</h4>
<p>(that helps)</p>



<a name="235321996"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235321996" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> rylev <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235321996">(Apr 20 2021 at 10:41)</a>:</h4>
<p>the lack of &amp;self in the signature was purely an oversight.</p>



<a name="235322115"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235322115" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> rylev <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235322115">(Apr 20 2021 at 10:42)</a>:</h4>
<p>The story is very loosely based on my experience with: <a href="https://github.com/Azure/azure-sdk-for-rust/blob/8530b14828869e93f200894c7f79b6be3a3ed5e3/sdk/core/src/http_client.rs#L11">https://github.com/Azure/azure-sdk-for-rust/blob/8530b14828869e93f200894c7f79b6be3a3ed5e3/sdk/core/src/http_client.rs#L11</a></p>



<a name="235322620"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235322620" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235322620">(Apr 20 2021 at 10:48)</a>:</h4>
<p><span class="user-mention" data-user-id="224872">@rylev</span> that helps; I'm trying to write a "shiny future" variant and i'm hitting some interesting questions</p>



<a name="235322748"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235322748" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235322748">(Apr 20 2021 at 10:49)</a>:</h4>
<p>One of them was that I wanted to incorporate the point about being able to bound the futures that get returned</p>



<a name="235322763"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235322763" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235322763">(Apr 20 2021 at 10:49)</a>:</h4>
<p>e.g., maybe you want to require that the futures returned by <code>execute_request</code> are <code>Send</code> too</p>



<a name="235322843"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235322843" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235322843">(Apr 20 2021 at 10:50)</a>:</h4>
<p>but in order to make that make sense, I kind of had to start assuming other things, like some form of rayon integration :)</p>



<a name="235322861"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235322861" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235322861">(Apr 20 2021 at 10:50)</a>:</h4>
<p>because otherwise, the futures would capture the <code>&amp;self</code> and you couldn't really spawn tasks that process them</p>



<a name="235323057"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235323057" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235323057">(Apr 20 2021 at 10:52)</a>:</h4>
<p>I see though that you have <a href="https://github.com/Azure/azure-sdk-for-rust/blob/8530b14828869e93f200894c7f79b6be3a3ed5e3/sdk/core/src/http_client.rs#L10">Send</a> here</p>



<a name="235324109"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235324109" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235324109">(Apr 20 2021 at 11:02)</a>:</h4>
<p><span class="user-mention" data-user-id="224872">@rylev</span> it looks like you use the <code>HttpClient</code> exclusively as a <code>Arc&lt;dyn HttpClient&gt;</code>, yes?</p>



<a name="235330103"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235330103" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> rylev <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235330103">(Apr 20 2021 at 11:55)</a>:</h4>
<p>Yes we're basically always using it in an Arc though it wasn't always like this. We're in the middle of a pretty large refactor so things are a bit messy</p>



<a name="235365131"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235365131" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235365131">(Apr 20 2021 at 15:36)</a>:</h4>
<p><span class="user-mention" data-user-id="224872">@rylev</span> as far as I can tell, at no point does the future returned -- ah, I see</p>



<a name="235365158"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235365158" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235365158">(Apr 20 2021 at 15:36)</a>:</h4>
<p>I was going to say that the future from <code>http_client.execute_request</code> is never sent to another thread</p>



<a name="235365162"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235365162" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235365162">(Apr 20 2021 at 15:36)</a>:</h4>
<p>but that's not the point</p>



<a name="235365186"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235365186" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235365186">(Apr 20 2021 at 15:36)</a>:</h4>
<p>it is potentially live during the await (of course!)</p>



<a name="235365241"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235365241" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235365241">(Apr 20 2021 at 15:37)</a>:</h4>
<p>and hence if we want the future that is awaiting it to be <code>Send</code></p>



<a name="235365258"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235365258" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235365258">(Apr 20 2021 at 15:37)</a>:</h4>
<p>it must itself be <code>Send</code></p>



<a name="235367818"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235367818" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> rylev <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235367818">(Apr 20 2021 at 15:53)</a>:</h4>
<p>Exactly</p>



<a name="235371163"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235371163" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lucio Franco <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235371163">(Apr 20 2021 at 16:12)</a>:</h4>
<p>We have one in tower that we've spent a lot of time on. Its currently a trait alias and tower's service layer is our attempt at getting a fully featured trait that does async stuff (kinda). I assume you already know about this though.</p>



<a name="235372533"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235372533" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235372533">(Apr 20 2021 at 16:21)</a>:</h4>
<p><span class="user-mention" data-user-id="207781">@Lucio Franco</span> one what exactly?</p>



<a name="235372543"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235372543" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235372543">(Apr 20 2021 at 16:21)</a>:</h4>
<p>do you mean the <code>Service</code> trait?</p>



<a name="235380134"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235380134" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Ibraheem Ahmed <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235380134">(Apr 20 2021 at 17:10)</a>:</h4>
<p>actix-web has <a href="https://docs.rs/actix-web/3.3.2/actix_web/dev/trait.Transform.html"><code>Transform</code></a>, <a href="https://docs.rs/actix-web/3.3.2/actix_web/trait.FromRequest.html"><code>FromRequest</code></a>, <a href="https://docs.rs/actix-service/2.0.0/actix_service/trait.ServiceFactory.html"><code>ServiceFactory</code></a>, and <a href="https://docs.rs/actix-web/3.3.2/actix_web/dev/trait.Service.html"><code>Service</code></a>, all of which have an associated <code>type Future</code> and <code>poll_ready</code> function.</p>



<a name="235380192"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235380192" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Ibraheem Ahmed <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235380192">(Apr 20 2021 at 17:11)</a>:</h4>
<p>and it is quite common for users to come with confusing error messages asking for help when they try to implement it themselves</p>



<a name="235388280"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235388280" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235388280">(Apr 20 2021 at 18:05)</a>:</h4>
<p><span class="user-mention" data-user-id="363998">@Ibraheem Ahmed</span> thanks!</p>



<a name="235766761"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235766761" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lucio Franco <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235766761">(Apr 22 2021 at 23:59)</a>:</h4>
<p>yes, and also Actix stuff is inspired by tower :)</p>



<a name="235766780"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235766780" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lucio Franco <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235766780">(Apr 22 2021 at 23:59)</a>:</h4>
<p>I am basically waiting for GAT/async traits to work on the next gen so happy to spend sometime explaining requirements of what we need etc</p>



<a name="235831595"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235831595" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235831595">(Apr 23 2021 at 12:28)</a>:</h4>
<p><span class="user-mention" data-user-id="207781">@Lucio Franco</span> notes or conversations would be great</p>



<a name="235874754"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187312-wg-async-foundations/topic/async%20fn%20in%20traits/near/235874754" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lucio Franco <a href="https://rust-lang.github.io/zulip_archive/stream/187312-wg-async-foundations/topic/async.20fn.20in.20traits.html#235874754">(Apr 23 2021 at 17:02)</a>:</h4>
<p>I don't think we have any notes yet but I can write some up. Maybe it makes sense to setup sometime to do that.</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>